1. Field of the Invention
This invention relates to modifying a piece (i.e., a set of faces) of 3D geometry when the number of faces and/or edge definitions comprising the piece change. This modification is called a non-local change.
2. Prior Art
Objects in a CAD system can be represented in a parameter-based way or in a geometry-based way. In a parameter-based representation, the object is modeled as an object along with a set of features and history that define the object. In a geometry-based representation, the object is simply represented as a set of geometric data.
Modification of geometry without knowledge of its construction history requires specific methods. Geometry engines, such as ACIS or Parasolid, provide the methods to modify local geometry by moving or modifying a set of faces within a part. However, these methods are limited in the types of change they can support. They can support “local operations,” which are changes in which the shape (or topology) of the modified piece of geometry is very similar to the original shape. Specifically, the piece of geometry has the same number of faces and similar edge definitions. These methods cannot support changes where faces are changed in a way that is not obvious or predictable from the original data. They often fail in cases where new edges appear or disappear during the modification process. Commonly, faces and edges are deleted, added, split, or merged into others, and tracking these changes makes many systems highly unstable.
Parameter-based CAD systems offer the ability to move or modify a piece of geometry through the blind modification of feature parameters. This means that edges and faces are continually recalculated and recreated as the new “recipe” for feature re-generation is followed and geometry is remade. The downstream effects of these changes are unpredictable, since an edge or face needed for a later operation could be missing, changed, or swapped for another as a result of recomputation. Conversely, those systems that use geometry-based representations offer the ability to move or modify a piece of geometry (such as a protrusion or depression) fail when the movement or modification results in an unpredictable or non-obvious change (such as a change in the number of faces or when new edges appear or disappear). Small, local changes are therefore provided for, but larger topological changes are precluded. For example, most CAD systems simply prevent the user from moving a protrusion halfway into a solid, since the intersection will result in a greater or fewer number of faces, and therefore the local operation fails.